import java.util.ArrayList;
import java.util.List;

public class test2 {

   public static List<List<Integer>> generate(int numRows){
       List<List<Integer>> ret = new ArrayList<>();
       List<Integer> list = new ArrayList<>();
       list.add(1);
       ret.add(list);
       for (int i = 1; i < numRows; i++) {
           List<Integer> curRow = new ArrayList<>();
           curRow.add(1);
           for (int j = 1; j < i ; j++) {
               curRow.add(ret.get(i-1).get(j) + ret.get(i-1).get(j-1));
           }
           curRow.add(1);
           ret.add(curRow);
       }
       return ret;
   }

    public static void main(String[] args) {
        List<List<Integer>> ret = generate(5);
        for (int i = 0; i < 5; i++) {
            System.out.println(ret.get(i));
        }
    }
}
